﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace TCU_Archivo
{
    public partial class Form1 : Form
    {
              SqlConnection  conn =new SqlConnection(TCU_Archivo.Properties.Settings.Default.conex);
          
        public Form1()
        {
            InitializeComponent();
          
        }

        private void label7_Click(object sender, EventArgs e)
        {

        }

        private void button2_Click(object sender, EventArgs e)
        {
            MenuPrincipal formaSiguiente = new MenuPrincipal();
            this.Hide();
            formaSiguiente.Show(); 
        }

        private void button1_Click(object sender, EventArgs e)
        {

            if (comboIdentificacion.SelectedItem == null)
            {
                MessageBox.Show("* Debe llenar el campo Tipo de Identificacion", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

            }
            else
            {
                if (txtidentificacion.Text == "")
                {
                    MessageBox.Show("* Debe llenar el campo Identificacion", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                }
                else
                {
                    if (txtnombre.Text == "")
                    {
                        MessageBox.Show("* Debe llenar el campo Nombre", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                    }
                    else
                    {
                        if (txtapellido.Text == "")
                        {
                            MessageBox.Show("* Debe llenar el campo Apellido1", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                        }
                        else
                        {
                            if (txtapellido2.Text == "")
                            {
                                MessageBox.Show("* Debe llenar el campo Apellido2", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);


                            }
                            else
                            {
                                if (comboSexo.SelectedItem == null)
                                {
                                    MessageBox.Show("* Debe llenar el campo Sexo", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                                }
                                else
                                {
                                    if (comboEBAIS.SelectedItem == null)
                                    {
                                        MessageBox.Show("* Debe llenar el campo Dirección", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                                    }

                                    else
                                    {

                                        if (comboEstado.SelectedItem == null)
                                        {
                                            MessageBox.Show("* Debe llenar el campo Estado del Paciente", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                                        }

                                        else
                                        {
                                            if (txtebais.Visible == true && txtebais.Text == "")
                                            {
                                                
                                                    MessageBox.Show("* Debe llenar el campo Dirección", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);

                                                
                                            }
                                            else
                                            {
                                                guardar();

                                            }
                                        }
                                    }
                                }
                            }
                        }

                    }

                }
            }
        }




        
        public void guardar() {
           
            try
            {
                //conn = new SqlConnection(TCU_Archivo.Properties.Settings.Default.conex);


                string text = "INSERT INTO Padron(IDENTIFICACION,TIPO_IDENTIFICACION,NOMBRE,APELLIDO1,APELLIDO2, SEXO,FECHA_NACIMIENTO,DIRECCION,OBSERVACIONES,Estado) " +
                              "VALUES (@ID,@TIPO_ID,@NOMBRE,@APELLIDO1,@APELLIDO2, @SEXO,@FECHA,@EBAIS,@OBSERVACIONES,@Estado )  ";
                
                SqlCommand agregar = new SqlCommand(text);
                agregar.Parameters.AddWithValue("@ID", txtidentificacion.Text);
                agregar.Parameters.AddWithValue("@TIPO_ID", comboIdentificacion.SelectedItem);
                agregar.Parameters.AddWithValue("@NOMBRE", txtnombre.Text);
                agregar.Parameters.AddWithValue("@APELLIDO1", txtapellido.Text);
                agregar.Parameters.AddWithValue("@APELLIDO2", txtapellido2.Text);
                agregar.Parameters.AddWithValue("SEXO", comboSexo.SelectedItem);
                agregar.Parameters.AddWithValue("@Estado", comboEstado.SelectedItem);

                SqlParameter param = new SqlParameter("@FECHA", DbType.Date);
                param.Value = txtfecha.Value;
                agregar.Parameters.Add(param);
               
                if (comboEBAIS.Text != "Otros")
                {

                    agregar.Parameters.AddWithValue("@EBAIS", comboEBAIS.SelectedItem);
                }
                else {

                    agregar.Parameters.AddWithValue("@EBAIS", txtebais.Text);
                }
                
                
                agregar.Parameters.AddWithValue("@OBSERVACIONES", txtobservaciones.Text);
                agregar.Connection = conn;
                conn.Open();
                agregar.ExecuteNonQuery();
                conn.Close();
                MessageBox.Show("Agregado Correctamente", "Área de Salud Grecia", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                MenuPrincipal formaSiguiente = new MenuPrincipal();
                this.Hide();
                formaSiguiente.Show();

            }
            catch (Exception ex)
            {
                MessageBox.Show("ERROR al conectar a la base de datos: \n" +
                    ex.Message, "Comprobar usuario",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);

            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }

        }

        
        private void comboIdentificacion_SelectedIndexChanged(object sender, EventArgs e)
        {
            txtidentificacion.Visible = true;
            txtidentificacion.Clear();
        }

        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void txtidentificacion_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (((e.KeyChar) < 48 && e.KeyChar != 8) || e.KeyChar > 57) {
                MessageBox.Show("Solo se permiten numeros ");
                e.Handled = true;
            }

            int s = txtidentificacion.Text.Length;

            if (comboIdentificacion.Text == "Cédula")
            {

                
                    txtidentificacion.MaxLength = 9;
                    //MessageBox.Show("El tipo de identificacion no permmite mas de 9 numeros ");
                    
                
            }
            else 
            {
                if (comboIdentificacion.Text == "Interno")
                {
                    
                        txtidentificacion.MaxLength = 14;

                        //MessageBox.Show("El tipo de identificacion no permmite mas de 14 numeros ");
                                         
                }
                else 
                {
                    if (comboIdentificacion.Text == "Asegurado")
                    {
                        
                            txtidentificacion.MaxLength = 10;
                            ////MessageBox.Show("El tipo de identificacion no permmite mas de 10 numeros ");
                            
                        

                    }                
                }
            }
        }

        private void comboEBAIS_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboEBAIS.Text == "Otros")
            {

                txtebais.Visible = true;
                comboEBAIS.Text = "Otros :" + txtebais.Text;

            }
            else {

                txtebais.Visible = false;

            }
        }



    }
}
